Conventionally, generation of a gait (desired gait) for Causing a legged mobile robot, for example, a two-legged mobile robot to move has primarily been aimed to generate a gait (walking gait) which causes the robot to perform a smooth walking action. However, in recent years, as the development of the legged mobile robot has been advanced, it is desired to generate a gait that can cause the robot not only to walk but also run.
Note that, since the word “gait” in Chinese characters includes a Chinese character meaning “walk”, the word tends to be misunderstood as meaning only walking. However, originally, the word “gait” has a concept that also includes “running” as evidenced by the fact that it is used as a word for “trotting” or a running mode of a horse.
Now, differences in characteristics between walking and running will be described.
Typically, running is defined as a movement mode which includes an instant at which all the legs float in the air. However, this definition cannot always definitely distinguish between walking and running. For example, during fast jogging, most people have all their legs floating in the air at a certain instant. On the other hand, during slow jogging, many people have either of their legs always in contact with the ground. Defining the fast jogging as running and the slow jogging as walking seems to be slightly unreasonable.
FIG. 48 shows patterns of a body vertical position and a floor reaction force vertical component (i.e., the sum of the floor reaction force vertical components applied to the right and left legs) during typical running. FIG. 49 shows patterns of the body vertical position and the floor reaction force vertical component during typical walking.
Here, the term “body vertical position/velocity” means the vertical position and velocity of a representative point of the body. The term “body horizontal position/velocity” means the horizontal position and velocity of the representative point of the body. The body vertical position/velocity and the body horizontal position/velocity are collectively referred to as a body position/velocity.
In addition, a “floor reaction force's vertical component” should be more precisely described as a “vertical component of the translation floor reaction force” in order to distinguish it from a moment component around a vertical axis of a floor reaction force. However, since the word is lengthy, “translation” is omitted here.
First, as for the movement of the body, when a robot walks, the body reaches the highest point at an instant when the body passes over the supporting leg. On the other hand, the body reaches the lowest point at that instant when the robot runs. That is, walking and running have inverse phases of the vertical movement pattern.
On the other hand, the floor reaction force is relatively constant during walking, while, during running, it largely varies and reaches the highest value at the instant when the body passes over the supporting leg. Of course, the floor reaction force is 0 at the instant when all the legs float in the air. From a more detailed observation, the floor reaction force produced during running is found to be approximately proportional to the extent of folding of the supporting leg. In other words, during running, the robot moves by jumping using the legs just like springs.
During slow jogging, the body vertical movement has the same phase as that of the typical running. In addition, in many cases, slow jogging doesn't include an instant when all the legs float in the air. Nevertheless, the floor reaction force is not completely but approximately 0 at an instant of switching of the supporting leg (free leg).
Therefore, as described above, it seems reasonable and appropriate that walking and running are distinguished from one another based on the characteristics of the patterns of the body vertical movement and floor reaction force so that slow jogging is also included in running.
In particular, distinguishing between running and walking in a most characteristic manner, it can be said that running is a movement mode in which the floor reaction force is 0 or substantially 0 at an instant of switching of the supporting leg, and walking is the other movement modes (in which the floor reaction force vertical component is relatively constant).
In Japanese patent Application No. 2000-352011, the applicants have already proposed a technique for generating a legged mobile robot's gait involving a floor reaction force in a flexible manner in real time while substantially satisfying a dynamical equilibrium condition (the dynamical equilibrium condition is a balance condition among the gravity, inertial force and floor reaction force for a desired gait. In a narrow sense, the condition is that the moment applied about the desired ZMP by the resultant force of gravity and the inertial force caused by the movement of the desired gait is 0. Details thereof will be described later). This technique and a series of control devices for legged mobile robots proposed by the applicants in Japanese patent Laid-Open Nos. 10-86081 and 10-277969 and the like can be applied not only walking but also running.
However, according to these techniques, the body height (referred to as a body vertical position hereinafter) is determined in a geometrical manner based on the relative positional relationship between the body height and a foot, using the body height determination method previously proposed in Japanese patent Laid-open No. 10-86080 by the applicants. Furthermore, the desired floor reaction force vertical component is not set in an explicit manner but determined as a result of (depending on) the body vertical position (body height) determined in a geometrical manner as described above. Therefore, a desired floor reaction force vertical component cannot always be produced. Thus, during running of the robot in which an instant when the floor reaction force vertical component is 0 or substantially 0 has to be intentionally provided, the floor reaction force vertical component produced as a result of a movement of the robot according to a desired gait may not be adequately reduced at the instant when the floor reaction force vertical component should be 0 or substantially 0. If such a case occurs, the instant when the both feet of the robot float in the air or when only one of the feet is slightly in contact with the floor cannot be provided, so that it is difficult to make the robot run smoothly. That is, the conventional techniques are not the optimum control techniques, because the floor reaction force vertical component pattern of the gait generated by the techniques is not always suitable for running.
In the first embodiment in Japanese patent Application No. 2000-352011, approximation of the body behavior (modeling using a linear inverted pendulum) is made on the assumption that the floor reaction force vertical component is substantially constant. Thus, as for running, which involves significant variation (or a wide range of variation) of the floor reaction force vertical component, the approximation precision of the body behavior is reduced, and there is a possibility that the stability margin for the robot is reduced.
Therefore, in order to generate a running gait or the like which involves significant variation of the floor reaction force vertical component, the non-linear model described in relation to the second embodiment in Japanese patent Application No. 2000-352011 (a model with higher precision) has to be used to generate a gait in a searching manner. However, using such a non-linear model results in a higher nonlinearity and, thus, a degraded convergence in the searching process. Thus, an enormous amount of calculation is required, so that it is difficult to generate a gait in real time.
Therefore, an object of the present invention is to provide a gait generation device that can generate a gait for a legged mobile robot which is suitable for not only walking of the robot but also running or other movement at a high velocity.
Specifically, an object of the present invention is to provide a gait generation device that can generate a floor reaction force vertical component pattern and a movement pattern which are suitable for a gait mode, such as a running gait or walking gait.
Furthermore, another object of the present invention is to provide a control device for the legged mobile robot which can make the robot move smoothly with the gait generated by the gait generation device.